package org.yuanqiframework.yuanqi.boot.sys.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.yuanqiframework.yuanqi.boot.sys.dto.LoginUserDTO;
import org.yuanqiframework.yuanqi.boot.sys.dto.SysUserDTO;
import org.yuanqiframework.yuanqi.boot.sys.dto.SysUserQueryDTO;
import org.yuanqiframework.yuanqi.boot.sys.entity.SysUser;
import org.yuanqiframework.yuanqi.boot.sys.vo.SysUserVO;
import org.yuanqiframework.yuanqi.boot.sys.vo.UserInfoVO;

import javax.validation.Valid;

/**
 * @author cbt28
 * @description 针对表【sys_user】的数据库操作Service
 * @createDate 2025-05-30 22:33:03
 */
public interface SysUserService extends IService<SysUser> {

    Page<SysUserVO> listUser(SysUserQueryDTO sysUserQueryDTO);

    String getPasswordByUsername(String username);

    boolean saveUser(SysUserDTO sysUserDTO);

    boolean updateUser(String id, SysUserDTO sysUserDTO);

    boolean changePassword(String userId, String oldPassword, String newPassword);

    UserInfoVO login(LoginUserDTO loginUserDTO);
}
